Termination w.r.t. Q of the following Term Rewriting System could not be shown:
Q restricted rewrite system:
The TRS R consists of the following rules:
a__dbl1(0) -> 0
a__dbl1(s1(X)) -> s1(s1(dbl1(X)))
a__dbls1(nil) -> nil
a__dbls1(cons2(X, Y)) -> cons2(dbl1(X), dbls1(Y))
a__sel2(0, cons2(X, Y)) -> mark1(X)
a__sel2(s1(X), cons2(Y, Z)) -> a__sel2(mark1(X), mark1(Z))
a__indx2(nil, X) -> nil
a__indx2(cons2(X, Y), Z) -> cons2(sel2(X, Z), indx2(Y, Z))
a__from1(X) -> cons2(X, from1(s1(X)))
a__dbl11(0) -> 01
a__dbl11(s1(X)) -> s11(s11(a__dbl11(mark1(X))))
a__sel12(0, cons2(X, Y)) -> mark1(X)
a__sel12(s1(X), cons2(Y, Z)) -> a__sel12(mark1(X), mark1(Z))
a__quote1(0) -> 01
a__quote1(s1(X)) -> s11(a__quote1(mark1(X)))
a__quote1(dbl1(X)) -> a__dbl11(mark1(X))
a__quote1(sel2(X, Y)) -> a__sel12(mark1(X), mark1(Y))
mark1(dbl1(X)) -> a__dbl1(mark1(X))
mark1(dbls1(X)) -> a__dbls1(mark1(X))
mark1(sel2(X1, X2)) -> a__sel2(mark1(X1), mark1(X2))
mark1(indx2(X1, X2)) -> a__indx2(mark1(X1), X2)
mark1(from1(X)) -> a__from1(X)
mark1(dbl11(X)) -> a__dbl11(mark1(X))
mark1(sel12(X1, X2)) -> a__sel12(mark1(X1), mark1(X2))
mark1(quote1(X)) -> a__quote1(mark1(X))
mark1(0) -> 0
mark1(s1(X)) -> s1(X)
mark1(nil) -> nil
mark1(cons2(X1, X2)) -> cons2(X1, X2)
mark1(01) -> 01
mark1(s11(X)) -> s11(mark1(X))
a__dbl1(X) -> dbl1(X)
a__dbls1(X) -> dbls1(X)
a__sel2(X1, X2) -> sel2(X1, X2)
a__indx2(X1, X2) -> indx2(X1, X2)
a__from1(X) -> from1(X)
a__dbl11(X) -> dbl11(X)
a__sel12(X1, X2) -> sel12(X1, X2)
a__quote1(X) -> quote1(X)
Q is empty.
↳ QTRS
↳ DependencyPairsProof
Q restricted rewrite system:
The TRS R consists of the following rules:
a__dbl1(0) -> 0
a__dbl1(s1(X)) -> s1(s1(dbl1(X)))
a__dbls1(nil) -> nil
a__dbls1(cons2(X, Y)) -> cons2(dbl1(X), dbls1(Y))
a__sel2(0, cons2(X, Y)) -> mark1(X)
a__sel2(s1(X), cons2(Y, Z)) -> a__sel2(mark1(X), mark1(Z))
a__indx2(nil, X) -> nil
a__indx2(cons2(X, Y), Z) -> cons2(sel2(X, Z), indx2(Y, Z))
a__from1(X) -> cons2(X, from1(s1(X)))
a__dbl11(0) -> 01
a__dbl11(s1(X)) -> s11(s11(a__dbl11(mark1(X))))
a__sel12(0, cons2(X, Y)) -> mark1(X)
a__sel12(s1(X), cons2(Y, Z)) -> a__sel12(mark1(X), mark1(Z))
a__quote1(0) -> 01
a__quote1(s1(X)) -> s11(a__quote1(mark1(X)))
a__quote1(dbl1(X)) -> a__dbl11(mark1(X))
a__quote1(sel2(X, Y)) -> a__sel12(mark1(X), mark1(Y))
mark1(dbl1(X)) -> a__dbl1(mark1(X))
mark1(dbls1(X)) -> a__dbls1(mark1(X))
mark1(sel2(X1, X2)) -> a__sel2(mark1(X1), mark1(X2))
mark1(indx2(X1, X2)) -> a__indx2(mark1(X1), X2)
mark1(from1(X)) -> a__from1(X)
mark1(dbl11(X)) -> a__dbl11(mark1(X))
mark1(sel12(X1, X2)) -> a__sel12(mark1(X1), mark1(X2))
mark1(quote1(X)) -> a__quote1(mark1(X))
mark1(0) -> 0
mark1(s1(X)) -> s1(X)
mark1(nil) -> nil
mark1(cons2(X1, X2)) -> cons2(X1, X2)
mark1(01) -> 01
mark1(s11(X)) -> s11(mark1(X))
a__dbl1(X) -> dbl1(X)
a__dbls1(X) -> dbls1(X)
a__sel2(X1, X2) -> sel2(X1, X2)
a__indx2(X1, X2) -> indx2(X1, X2)
a__from1(X) -> from1(X)
a__dbl11(X) -> dbl11(X)
a__sel12(X1, X2) -> sel12(X1, X2)
a__quote1(X) -> quote1(X)
Q is empty.
Q DP problem:
The TRS P consists of the following rules:
A__SEL2(0, cons2(X, Y)) -> MARK1(X)
MARK1(indx2(X1, X2)) -> MARK1(X1)
MARK1(dbl1(X)) -> A__DBL1(mark1(X))
A__SEL12(s1(X), cons2(Y, Z)) -> A__SEL12(mark1(X), mark1(Z))
A__QUOTE1(sel2(X, Y)) -> MARK1(Y)
MARK1(from1(X)) -> A__FROM1(X)
MARK1(sel2(X1, X2)) -> A__SEL2(mark1(X1), mark1(X2))
A__SEL12(0, cons2(X, Y)) -> MARK1(X)
A__SEL2(s1(X), cons2(Y, Z)) -> A__SEL2(mark1(X), mark1(Z))
A__QUOTE1(sel2(X, Y)) -> A__SEL12(mark1(X), mark1(Y))
MARK1(quote1(X)) -> MARK1(X)
A__SEL12(s1(X), cons2(Y, Z)) -> MARK1(X)
MARK1(sel12(X1, X2)) -> MARK1(X2)
MARK1(sel12(X1, X2)) -> A__SEL12(mark1(X1), mark1(X2))
MARK1(dbls1(X)) -> A__DBLS1(mark1(X))
MARK1(sel2(X1, X2)) -> MARK1(X1)
A__QUOTE1(s1(X)) -> A__QUOTE1(mark1(X))
MARK1(sel12(X1, X2)) -> MARK1(X1)
MARK1(dbl11(X)) -> MARK1(X)
A__QUOTE1(dbl1(X)) -> MARK1(X)
A__DBL11(s1(X)) -> MARK1(X)
MARK1(dbl11(X)) -> A__DBL11(mark1(X))
A__QUOTE1(s1(X)) -> MARK1(X)
A__DBL11(s1(X)) -> A__DBL11(mark1(X))
A__SEL2(s1(X), cons2(Y, Z)) -> MARK1(X)
A__QUOTE1(dbl1(X)) -> A__DBL11(mark1(X))
MARK1(dbl1(X)) -> MARK1(X)
A__SEL12(s1(X), cons2(Y, Z)) -> MARK1(Z)
MARK1(indx2(X1, X2)) -> A__INDX2(mark1(X1), X2)
MARK1(dbls1(X)) -> MARK1(X)
MARK1(sel2(X1, X2)) -> MARK1(X2)
A__SEL2(s1(X), cons2(Y, Z)) -> MARK1(Z)
A__QUOTE1(sel2(X, Y)) -> MARK1(X)
MARK1(s11(X)) -> MARK1(X)
MARK1(quote1(X)) -> A__QUOTE1(mark1(X))
The TRS R consists of the following rules:
a__dbl1(0) -> 0
a__dbl1(s1(X)) -> s1(s1(dbl1(X)))
a__dbls1(nil) -> nil
a__dbls1(cons2(X, Y)) -> cons2(dbl1(X), dbls1(Y))
a__sel2(0, cons2(X, Y)) -> mark1(X)
a__sel2(s1(X), cons2(Y, Z)) -> a__sel2(mark1(X), mark1(Z))
a__indx2(nil, X) -> nil
a__indx2(cons2(X, Y), Z) -> cons2(sel2(X, Z), indx2(Y, Z))
a__from1(X) -> cons2(X, from1(s1(X)))
a__dbl11(0) -> 01
a__dbl11(s1(X)) -> s11(s11(a__dbl11(mark1(X))))
a__sel12(0, cons2(X, Y)) -> mark1(X)
a__sel12(s1(X), cons2(Y, Z)) -> a__sel12(mark1(X), mark1(Z))
a__quote1(0) -> 01
a__quote1(s1(X)) -> s11(a__quote1(mark1(X)))
a__quote1(dbl1(X)) -> a__dbl11(mark1(X))
a__quote1(sel2(X, Y)) -> a__sel12(mark1(X), mark1(Y))
mark1(dbl1(X)) -> a__dbl1(mark1(X))
mark1(dbls1(X)) -> a__dbls1(mark1(X))
mark1(sel2(X1, X2)) -> a__sel2(mark1(X1), mark1(X2))
mark1(indx2(X1, X2)) -> a__indx2(mark1(X1), X2)
mark1(from1(X)) -> a__from1(X)
mark1(dbl11(X)) -> a__dbl11(mark1(X))
mark1(sel12(X1, X2)) -> a__sel12(mark1(X1), mark1(X2))
mark1(quote1(X)) -> a__quote1(mark1(X))
mark1(0) -> 0
mark1(s1(X)) -> s1(X)
mark1(nil) -> nil
mark1(cons2(X1, X2)) -> cons2(X1, X2)
mark1(01) -> 01
mark1(s11(X)) -> s11(mark1(X))
a__dbl1(X) -> dbl1(X)
a__dbls1(X) -> dbls1(X)
a__sel2(X1, X2) -> sel2(X1, X2)
a__indx2(X1, X2) -> indx2(X1, X2)
a__from1(X) -> from1(X)
a__dbl11(X) -> dbl11(X)
a__sel12(X1, X2) -> sel12(X1, X2)
a__quote1(X) -> quote1(X)
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
Q DP problem:
The TRS P consists of the following rules:
A__SEL2(0, cons2(X, Y)) -> MARK1(X)
MARK1(indx2(X1, X2)) -> MARK1(X1)
MARK1(dbl1(X)) -> A__DBL1(mark1(X))
A__SEL12(s1(X), cons2(Y, Z)) -> A__SEL12(mark1(X), mark1(Z))
A__QUOTE1(sel2(X, Y)) -> MARK1(Y)
MARK1(from1(X)) -> A__FROM1(X)
MARK1(sel2(X1, X2)) -> A__SEL2(mark1(X1), mark1(X2))
A__SEL12(0, cons2(X, Y)) -> MARK1(X)
A__SEL2(s1(X), cons2(Y, Z)) -> A__SEL2(mark1(X), mark1(Z))
A__QUOTE1(sel2(X, Y)) -> A__SEL12(mark1(X), mark1(Y))
MARK1(quote1(X)) -> MARK1(X)
A__SEL12(s1(X), cons2(Y, Z)) -> MARK1(X)
MARK1(sel12(X1, X2)) -> MARK1(X2)
MARK1(sel12(X1, X2)) -> A__SEL12(mark1(X1), mark1(X2))
MARK1(dbls1(X)) -> A__DBLS1(mark1(X))
MARK1(sel2(X1, X2)) -> MARK1(X1)
A__QUOTE1(s1(X)) -> A__QUOTE1(mark1(X))
MARK1(sel12(X1, X2)) -> MARK1(X1)
MARK1(dbl11(X)) -> MARK1(X)
A__QUOTE1(dbl1(X)) -> MARK1(X)
A__DBL11(s1(X)) -> MARK1(X)
MARK1(dbl11(X)) -> A__DBL11(mark1(X))
A__QUOTE1(s1(X)) -> MARK1(X)
A__DBL11(s1(X)) -> A__DBL11(mark1(X))
A__SEL2(s1(X), cons2(Y, Z)) -> MARK1(X)
A__QUOTE1(dbl1(X)) -> A__DBL11(mark1(X))
MARK1(dbl1(X)) -> MARK1(X)
A__SEL12(s1(X), cons2(Y, Z)) -> MARK1(Z)
MARK1(indx2(X1, X2)) -> A__INDX2(mark1(X1), X2)
MARK1(dbls1(X)) -> MARK1(X)
MARK1(sel2(X1, X2)) -> MARK1(X2)
A__SEL2(s1(X), cons2(Y, Z)) -> MARK1(Z)
A__QUOTE1(sel2(X, Y)) -> MARK1(X)
MARK1(s11(X)) -> MARK1(X)
MARK1(quote1(X)) -> A__QUOTE1(mark1(X))
The TRS R consists of the following rules:
a__dbl1(0) -> 0
a__dbl1(s1(X)) -> s1(s1(dbl1(X)))
a__dbls1(nil) -> nil
a__dbls1(cons2(X, Y)) -> cons2(dbl1(X), dbls1(Y))
a__sel2(0, cons2(X, Y)) -> mark1(X)
a__sel2(s1(X), cons2(Y, Z)) -> a__sel2(mark1(X), mark1(Z))
a__indx2(nil, X) -> nil
a__indx2(cons2(X, Y), Z) -> cons2(sel2(X, Z), indx2(Y, Z))
a__from1(X) -> cons2(X, from1(s1(X)))
a__dbl11(0) -> 01
a__dbl11(s1(X)) -> s11(s11(a__dbl11(mark1(X))))
a__sel12(0, cons2(X, Y)) -> mark1(X)
a__sel12(s1(X), cons2(Y, Z)) -> a__sel12(mark1(X), mark1(Z))
a__quote1(0) -> 01
a__quote1(s1(X)) -> s11(a__quote1(mark1(X)))
a__quote1(dbl1(X)) -> a__dbl11(mark1(X))
a__quote1(sel2(X, Y)) -> a__sel12(mark1(X), mark1(Y))
mark1(dbl1(X)) -> a__dbl1(mark1(X))
mark1(dbls1(X)) -> a__dbls1(mark1(X))
mark1(sel2(X1, X2)) -> a__sel2(mark1(X1), mark1(X2))
mark1(indx2(X1, X2)) -> a__indx2(mark1(X1), X2)
mark1(from1(X)) -> a__from1(X)
mark1(dbl11(X)) -> a__dbl11(mark1(X))
mark1(sel12(X1, X2)) -> a__sel12(mark1(X1), mark1(X2))
mark1(quote1(X)) -> a__quote1(mark1(X))
mark1(0) -> 0
mark1(s1(X)) -> s1(X)
mark1(nil) -> nil
mark1(cons2(X1, X2)) -> cons2(X1, X2)
mark1(01) -> 01
mark1(s11(X)) -> s11(mark1(X))
a__dbl1(X) -> dbl1(X)
a__dbls1(X) -> dbls1(X)
a__sel2(X1, X2) -> sel2(X1, X2)
a__indx2(X1, X2) -> indx2(X1, X2)
a__from1(X) -> from1(X)
a__dbl11(X) -> dbl11(X)
a__sel12(X1, X2) -> sel12(X1, X2)
a__quote1(X) -> quote1(X)
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph contains 1 SCC with 4 less nodes.
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
A__SEL2(0, cons2(X, Y)) -> MARK1(X)
MARK1(indx2(X1, X2)) -> MARK1(X1)
A__SEL12(s1(X), cons2(Y, Z)) -> A__SEL12(mark1(X), mark1(Z))
A__QUOTE1(sel2(X, Y)) -> MARK1(Y)
MARK1(sel2(X1, X2)) -> A__SEL2(mark1(X1), mark1(X2))
A__SEL12(0, cons2(X, Y)) -> MARK1(X)
A__SEL2(s1(X), cons2(Y, Z)) -> A__SEL2(mark1(X), mark1(Z))
A__QUOTE1(sel2(X, Y)) -> A__SEL12(mark1(X), mark1(Y))
MARK1(quote1(X)) -> MARK1(X)
A__SEL12(s1(X), cons2(Y, Z)) -> MARK1(X)
MARK1(sel12(X1, X2)) -> A__SEL12(mark1(X1), mark1(X2))
MARK1(sel2(X1, X2)) -> MARK1(X1)
MARK1(sel12(X1, X2)) -> MARK1(X2)
A__QUOTE1(s1(X)) -> A__QUOTE1(mark1(X))
MARK1(sel12(X1, X2)) -> MARK1(X1)
MARK1(dbl11(X)) -> MARK1(X)
A__QUOTE1(dbl1(X)) -> MARK1(X)
A__DBL11(s1(X)) -> MARK1(X)
MARK1(dbl11(X)) -> A__DBL11(mark1(X))
A__QUOTE1(s1(X)) -> MARK1(X)
A__SEL2(s1(X), cons2(Y, Z)) -> MARK1(X)
A__DBL11(s1(X)) -> A__DBL11(mark1(X))
A__QUOTE1(dbl1(X)) -> A__DBL11(mark1(X))
MARK1(dbl1(X)) -> MARK1(X)
A__SEL12(s1(X), cons2(Y, Z)) -> MARK1(Z)
MARK1(dbls1(X)) -> MARK1(X)
MARK1(sel2(X1, X2)) -> MARK1(X2)
A__SEL2(s1(X), cons2(Y, Z)) -> MARK1(Z)
A__QUOTE1(sel2(X, Y)) -> MARK1(X)
MARK1(s11(X)) -> MARK1(X)
MARK1(quote1(X)) -> A__QUOTE1(mark1(X))
The TRS R consists of the following rules:
a__dbl1(0) -> 0
a__dbl1(s1(X)) -> s1(s1(dbl1(X)))
a__dbls1(nil) -> nil
a__dbls1(cons2(X, Y)) -> cons2(dbl1(X), dbls1(Y))
a__sel2(0, cons2(X, Y)) -> mark1(X)
a__sel2(s1(X), cons2(Y, Z)) -> a__sel2(mark1(X), mark1(Z))
a__indx2(nil, X) -> nil
a__indx2(cons2(X, Y), Z) -> cons2(sel2(X, Z), indx2(Y, Z))
a__from1(X) -> cons2(X, from1(s1(X)))
a__dbl11(0) -> 01
a__dbl11(s1(X)) -> s11(s11(a__dbl11(mark1(X))))
a__sel12(0, cons2(X, Y)) -> mark1(X)
a__sel12(s1(X), cons2(Y, Z)) -> a__sel12(mark1(X), mark1(Z))
a__quote1(0) -> 01
a__quote1(s1(X)) -> s11(a__quote1(mark1(X)))
a__quote1(dbl1(X)) -> a__dbl11(mark1(X))
a__quote1(sel2(X, Y)) -> a__sel12(mark1(X), mark1(Y))
mark1(dbl1(X)) -> a__dbl1(mark1(X))
mark1(dbls1(X)) -> a__dbls1(mark1(X))
mark1(sel2(X1, X2)) -> a__sel2(mark1(X1), mark1(X2))
mark1(indx2(X1, X2)) -> a__indx2(mark1(X1), X2)
mark1(from1(X)) -> a__from1(X)
mark1(dbl11(X)) -> a__dbl11(mark1(X))
mark1(sel12(X1, X2)) -> a__sel12(mark1(X1), mark1(X2))
mark1(quote1(X)) -> a__quote1(mark1(X))
mark1(0) -> 0
mark1(s1(X)) -> s1(X)
mark1(nil) -> nil
mark1(cons2(X1, X2)) -> cons2(X1, X2)
mark1(01) -> 01
mark1(s11(X)) -> s11(mark1(X))
a__dbl1(X) -> dbl1(X)
a__dbls1(X) -> dbls1(X)
a__sel2(X1, X2) -> sel2(X1, X2)
a__indx2(X1, X2) -> indx2(X1, X2)
a__from1(X) -> from1(X)
a__dbl11(X) -> dbl11(X)
a__sel12(X1, X2) -> sel12(X1, X2)
a__quote1(X) -> quote1(X)
Q is empty.
We have to consider all minimal (P,Q,R)-chains.